package com.vision.utils;

/**
 * 验证工具类
 */
public class ValidationUtils {

    private static final String EMAIL_REGEX = "^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$";
    private static final String PHONE_REGEX = "^1[3456789]\\d{9}$";

    /**
     * 判断是否是邮箱
     * @param email 邮箱
     * @return true:是邮箱 false:不是邮箱
     */
    public static boolean isEmail(String email) {
        return email.matches(EMAIL_REGEX);
    }

    /**
     * 判断是否是手机号
     * @param phone 手机号
     * @return true:是手机号 false:不是手机号
     */
    public static boolean isPhone(String phone) {
        return phone.matches(PHONE_REGEX);
    }

    /**
     * 判断是否是邮箱或者手机号
     * @param emailOrPhone 邮箱或者手机号
     * @return true:是邮箱或者手机号 false:不是邮箱或者手机号
     */
    public static boolean isEmailOrPhone(String emailOrPhone) {
        return isEmail(emailOrPhone) || isPhone(emailOrPhone);
    }

    /**
     * 获取 6 位数验证码
     * @return 6位数验证码
     */
    public static String getValidationCode() {
        return String.valueOf((int)((Math.random() * 9 + 1) * 100000));
    }
}
